Desktop computing environments are generally centered around a display device and a windowing system. The display device, such as a liquid crystal display, presents information. The windowing system arranges the information. A typical arrangement is an assortment of desktop icons and windows. A user can select a desktop icon with a pointing device. For example, under Microsoft Windows XP, double clicking the left mouse button while the mouse pointer is over an icon opens that icon. Opening a desktop icon causes a user application to launch. The user application opens at least one window on the desktop and the user interacts with the user application via the window.
The user uses a pointing device, usually a computer mouse, to select items on the desktop and within applications. Moving the mouse causes a desktop cursor to move. The desktop cursor indicates an icon, such as a desktop icon, when it is over the icon. An indicated desktop icon can be selected with a mouse click or opened with a double mouse click. The Windows XP windowing system darkens a selected desktop icon but does nothing to indicate that the desktop cursor is over the icon. Apple OS X has a Dock feature consisting of a row of icons. Indicating an icon causes the icon to grow from its current size to a maximum size. An icon that is no longer indicated shrinks from its current size to a minimum size. Those practiced in the art of desktop computing are familiar with windowing systems, computer desktops, and icons. Those practiced in the art of desktop computing under Apple OS X are familiar with Apple Dock, and icons that grow and shrink.
After the introduction of the Apple Dock, jsdock, short for javascript dock, technology was developed. The Apple Dock is used exclusively on the Apple OS X desktop and takes advantage of low level Apple OS X capabilities. The jsdock technology also produces a growing/shrinking effect on icons. The jsdock technology however, is used with web browsers and is not tied to any one operating system. A Windows XP user using the Firefox web browser can enjoy the jsdock graphical effects.
Apple Dock, which is part of the desktop, is used to launch user applications under Apple OS X. The jsdock technology, however, is run within a web browser and can not cause user applications to launch. Each jsdock icon can be associated with a software module that executes within the web browser when the jsdock icon is opened. A single mouse click, multiple mouse click, or other user input can be used to open a jsdock icon.
The jsdock technology, while being significantly different from the Apple Dock, suffers from a number of shortcomings. One shortcoming is that jsdock uses inefficient algorithms for discovering that an icon is indicated or not indicated and for scaling icons. Another shortcoming is that jsdock displays each icon by scaling a single image to the appropriate size. Yet another shortcoming is that jsdock is limited to image scaling effects.